<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Icarous: /home/research133/Software/Icarous2/cFS/apps/ardupilot/fsw/src/ardupilot.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Icarous
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_c1698e121239b1aba7f6e782e4514e49.html">cFS</a></li><li class="navelem"><a class="el" href="dir_7ee4ce95da95d11e80a01c5101ed8d14.html">apps</a></li><li class="navelem"><a class="el" href="dir_506a83b8615d02b8de01e542b6e6aec1.html">ardupilot</a></li><li class="navelem"><a class="el" href="dir_34c390ab93c7cc50b8ac6379a233e257.html">fsw</a></li><li class="navelem"><a class="el" href="dir_696f940a09783b946b125fca9b0e6b4f.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">ardupilot.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>function declarations, definitions of macros, datastructures and global variables for the arudpilot application  
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;cfe.h&quot;</code><br />
<code>#include &quot;cfe_error.h&quot;</code><br />
<code>#include &quot;cfe_evs.h&quot;</code><br />
<code>#include &quot;cfe_sb.h&quot;</code><br />
<code>#include &quot;cfe_es.h&quot;</code><br />
<code>#include &lt;string.h&gt;</code><br />
<code>#include &lt;errno.h&gt;</code><br />
<code>#include &lt;unistd.h&gt;</code><br />
<code>#include &quot;network_includes.h&quot;</code><br />
<code>#include &quot;<a class="el" href="ardupilot__events_8h_source.html">ardupilot_events.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ardupilot__msg_8h_source.html">msgdef/ardupilot_msg.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="traffic__msg_8h_source.html">msgdef/traffic_msg.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ardupilot__msgids_8h_source.html">msgids/ardupilot_msgids.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="traffic__msgids_8h_source.html">msgids/traffic_msgids.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="scheduler__msgids_8h_source.html">msgids/scheduler_msgids.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ardupilotmega_2mavlink_8h_source.html">mavlink/ardupilotmega/mavlink.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="port__lib_8h_source.html">port_lib.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for ardupilot.h:</div>
<div class="dyncontent">
<div class="center"><img src="ardupilot_8h__incl.png" border="0" usemap="#_2home_2research133_2Software_2Icarous2_2cFS_2apps_2ardupilot_2fsw_2src_2ardupilot_8h" alt=""/></div>
<map name="_2home_2research133_2Software_2Icarous2_2cFS_2apps_2ardupilot_2fsw_2src_2ardupilot_8h" id="_2home_2research133_2Software_2Icarous2_2cFS_2apps_2ardupilot_2fsw_2src_2ardupilot_8h">
<area shape="rect" id="node11" href="ardupilot__events_8h.html" title="Event definitions for ardupilot app. " alt="" coords="5146,109,5274,136"/>
<area shape="rect" id="node12" href="ardupilot__msg_8h.html" title="Ardupilot message definitions. " alt="" coords="3821,109,3982,136"/>
<area shape="rect" id="node15" href="traffic__msg_8h.html" title="Traffic message definition. " alt="" coords="4006,109,4152,136"/>
<area shape="rect" id="node16" href="ardupilot__msgids_8h.html" title="Message ID definition of ardupilot app messages. " alt="" coords="5298,109,5476,136"/>
<area shape="rect" id="node17" href="traffic__msgids_8h.html" title="Traffic message id definitions. " alt="" coords="5500,109,5661,136"/>
<area shape="rect" id="node18" href="scheduler__msgids_8h.html" title="message topics published by the scheduler " alt="" coords="5686,109,5870,136"/>
<area shape="rect" id="node19" href="ardupilotmega_2mavlink_8h.html" title="MAVLink comm protocol built from ardupilotmega.xml. " alt="" coords="4128,184,4280,225"/>
<area shape="rect" id="node48" href="port__lib_8h.html" title="serial/socket port library " alt="" coords="4419,109,4494,136"/>
<area shape="rect" id="node20" href="ardupilotmega_2version_8h.html" title="MAVLink comm protocol built from ardupilotmega.xml. " alt="" coords="2379,273,2454,300"/>
<area shape="rect" id="node21" href="ardupilotmega_8h.html" title="MAVLink comm protocol generated from ardupilotmega.xml. " alt="" coords="2478,273,2592,300"/>
<area shape="rect" id="node22" href="protocol_8h_source.html" title="../protocol.h" alt="" coords="4216,355,4307,382"/>
<area shape="rect" id="node23" href="mavlink__msg__sensor__offsets_8h_source.html" title="./mavlink_msg_sensor\l_offsets.h" alt="" coords="4038,348,4192,389"/>
<area shape="rect" id="node24" href="mavlink__msg__set__mag__offsets_8h_source.html" title="./mavlink_msg_set_mag\l_offsets.h" alt="" coords="4332,348,4496,389"/>
<area shape="rect" id="node25" href="mavlink__msg__meminfo_8h_source.html" title="./mavlink_msg_meminfo.h" alt="" coords="4520,355,4694,382"/>
<area shape="rect" id="node26" href="mavlink__msg__ap__adc_8h_source.html" title="./mavlink_msg_ap_adc.h" alt="" coords="28,355,194,382"/>
<area shape="rect" id="node27" href="mavlink__msg__digicam__configure_8h_source.html" title="./mavlink_msg_digicam\l_configure.h" alt="" coords="218,348,377,389"/>
<area shape="rect" id="node28" href="mavlink__msg__digicam__control_8h_source.html" title="./mavlink_msg_digicam\l_control.h" alt="" coords="401,348,560,389"/>
<area shape="rect" id="node29" href="mavlink__msg__mount__configure_8h_source.html" title="./mavlink_msg_mount\l_configure.h" alt="" coords="584,348,734,389"/>
<area shape="rect" id="node30" href="mavlink__msg__mount__control_8h_source.html" title="./mavlink_msg_mount\l_control.h" alt="" coords="758,348,909,389"/>
<area shape="rect" id="node31" href="mavlink__msg__mount__status_8h_source.html" title="./mavlink_msg_mount\l_status.h" alt="" coords="933,348,1084,389"/>
<area shape="rect" id="node32" href="mavlink__msg__fence__point_8h_source.html" title="./mavlink_msg_fence\l_point.h" alt="" coords="1108,348,1255,389"/>
<area shape="rect" id="node33" href="mavlink__msg__fence__fetch__point_8h_source.html" title="./mavlink_msg_fence\l_fetch_point.h" alt="" coords="1279,348,1426,389"/>
<area shape="rect" id="node34" href="mavlink__msg__fence__status_8h_source.html" title="./mavlink_msg_fence\l_status.h" alt="" coords="1450,348,1596,389"/>
<area shape="rect" id="node35" href="mavlink__msg__ahrs_8h_source.html" title="./mavlink_msg_ahrs.h" alt="" coords="1621,355,1772,382"/>
<area shape="rect" id="node36" href="mavlink__msg__simstate_8h_source.html" title="./mavlink_msg_simstate.h" alt="" coords="1796,355,1970,382"/>
<area shape="rect" id="node37" href="mavlink__msg__hwstatus_8h_source.html" title="./mavlink_msg_hwstatus.h" alt="" coords="1995,355,2174,382"/>
<area shape="rect" id="node38" href="mavlink__msg__radio_8h_source.html" title="./mavlink_msg_radio.h" alt="" coords="2198,355,2352,382"/>
<area shape="rect" id="node39" href="mavlink__msg__limits__status_8h_source.html" title="./mavlink_msg_limits\l_status.h" alt="" coords="2376,348,2521,389"/>
<area shape="rect" id="node40" href="mavlink__msg__wind_8h_source.html" title="./mavlink_msg_wind.h" alt="" coords="2546,355,2698,382"/>
<area shape="rect" id="node41" href="mavlink__msg__data16_8h_source.html" title="./mavlink_msg_data16.h" alt="" coords="2722,355,2886,382"/>
<area shape="rect" id="node42" href="mavlink__msg__data32_8h_source.html" title="./mavlink_msg_data32.h" alt="" coords="2910,355,3074,382"/>
<area shape="rect" id="node43" href="mavlink__msg__data64_8h_source.html" title="./mavlink_msg_data64.h" alt="" coords="3098,355,3262,382"/>
<area shape="rect" id="node44" href="mavlink__msg__data96_8h_source.html" title="./mavlink_msg_data96.h" alt="" coords="3286,355,3450,382"/>
<area shape="rect" id="node45" href="mavlink__msg__rangefinder_8h_source.html" title="./mavlink_msg_rangefinder.h" alt="" coords="3475,355,3664,382"/>
<area shape="rect" id="node46" href="mavlink__msg__airspeed__autocal_8h_source.html" title="./mavlink_msg_airspeed\l_autocal.h" alt="" coords="3688,348,3851,389"/>
<area shape="rect" id="node47" href="mavlink__msg__rally__point_8h_source.html" title="./mavlink_msg_rally\l_point.h" alt="" coords="3875,348,4014,389"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="ardupilot_8h__dep__incl.png" border="0" usemap="#_2home_2research133_2Software_2Icarous2_2cFS_2apps_2ardupilot_2fsw_2src_2ardupilot_8hdep" alt=""/></div>
<map name="_2home_2research133_2Software_2Icarous2_2cFS_2apps_2ardupilot_2fsw_2src_2ardupilot_8hdep" id="_2home_2research133_2Software_2Icarous2_2cFS_2apps_2ardupilot_2fsw_2src_2ardupilot_8hdep">
<area shape="rect" id="node2" href="ardupilot_8c.html" title="function definitions for ardupilot app " alt="" coords="5,109,195,165"/>
</map>
</div>
</div>
<p><a href="ardupilot_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structappdataInt__t.html">appdataInt_t</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Structure to hold app data.  <a href="structappdataInt__t.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a2a8404c2e693c10181d8c2567227f2d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a8404c2e693c10181d8c2567227f2d5"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>ARDUPILOT_PIPE_NAME</b>&#160;&#160;&#160;&quot;FLIGHTPLAN&quot;</td></tr>
<tr class="separator:a2a8404c2e693c10181d8c2567227f2d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c0c75d915fc6765b776b8b6ff7d88c4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c0c75d915fc6765b776b8b6ff7d88c4"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>ARDUPILOT_PIPE_DEPTH</b>&#160;&#160;&#160;100</td></tr>
<tr class="separator:a8c0c75d915fc6765b776b8b6ff7d88c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1976e70bfacc0fa5f6fed62810305cb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1976e70bfacc0fa5f6fed62810305cb3"></a>
#define&#160;</td><td class="memItemRight" valign="bottom"><b>SCH_ARDUPILOT_PIPE1_NAME</b>&#160;&#160;&#160;&quot;SCH_ARDUPILOT&quot;</td></tr>
<tr class="separator:a1976e70bfacc0fa5f6fed62810305cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a7e009e7dbc0dd7be939d03455c972549"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549">controlMode_e</a> { <br />
&#160;&#160;<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a1aa061c741237642fc9720e78bcc0ce9">STABILIZE</a> = 0, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549ae0a0490702d97acb639917fd526e2333">ACRO</a> = 1, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a3f19d04c83af54e96713b4ab14c7a7ef">ALT_HOLD</a> = 2, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549aeef9468d1b98bca652a04bf5063fd9d6">AUTO</a> = 3, 
<br />
&#160;&#160;<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a2781c142ec876dad824cf164eb9c8c23">GUIDED</a> = 4, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a27c8a6252930823f9ed57d36593e9bb1">LOITER</a> = 5, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a19cd99444b6f1588876b490ab1198d73">RTL</a> = 6, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549aa79c827759ea48f0735386c4b1188911">CIRCLE</a> = 7, 
<br />
&#160;&#160;<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a946256f1d654ac45417961704ea2323d">DRIFT</a> = 11, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a956b9eef94661d496f43e5e155353408">SPORT</a> = 13, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a97744c5570e743b377f5fb63b9aa3587">FLIP</a> = 14, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a8345a967452584c722cca8ee80d5c4a5">AUTOTUNE</a> = 15, 
<br />
&#160;&#160;<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a811e9291d1a8da7dc288f079f836eda9">POSHOLD</a> = 16, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a8b23c50cc938e0b366df8d8eeeb1bf9f">BRAKE</a> = 17, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549abc5a79c786d2b239440dd3b92c402ef4">THROW</a> = 18, 
<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a2f6891f13a38daa173fe0dc2d66aa561">AVOID_ADSB</a> = 19, 
<br />
&#160;&#160;<a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549a4957a999adfbd682a93d13bf054c4ee3">GUIDED_NOGPS</a> = 20
<br />
 }<tr class="memdesc:a7e009e7dbc0dd7be939d03455c972549"><td class="mdescLeft">&#160;</td><td class="mdescRight">enumeration for Ardupilot control modes  <a href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:a7e009e7dbc0dd7be939d03455c972549"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:af4f9c53f530257299da5e69efd78a5c8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#af4f9c53f530257299da5e69efd78a5c8">ARDUPILOT_AppMain</a> (void)</td></tr>
<tr class="separator:af4f9c53f530257299da5e69efd78a5c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfd19915da5bc293baee951216bc0907"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#abfd19915da5bc293baee951216bc0907">ARDUPILOT_AppInit</a> (void)</td></tr>
<tr class="separator:abfd19915da5bc293baee951216bc0907"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5a2a42dcdd4c7122f4347b51c199929"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#aa5a2a42dcdd4c7122f4347b51c199929">ARDUPILOT_AppCleanUp</a> (void)</td></tr>
<tr class="separator:aa5a2a42dcdd4c7122f4347b51c199929"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19f1aafabbad250c13d64ea4e563e683"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a19f1aafabbad250c13d64ea4e563e683">Task1</a> (void)</td></tr>
<tr class="separator:a19f1aafabbad250c13d64ea4e563e683"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab1c228faf9d583ac61284a7b20d3b058"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#ab1c228faf9d583ac61284a7b20d3b058">GetMAVLinkMsgFromAP</a> (void)</td></tr>
<tr class="separator:ab1c228faf9d583ac61284a7b20d3b058"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b56d89d18a7b18c8cbeaf32feea0f18"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a8b56d89d18a7b18c8cbeaf32feea0f18">ProcessAPMessage</a> (mavlink_message_t message)</td></tr>
<tr class="separator:a8b56d89d18a7b18c8cbeaf32feea0f18"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40230a0a2ea73d576449377519dba3b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a40230a0a2ea73d576449377519dba3b6">ARDUPILOT_ProcessPacket</a> (void)</td></tr>
<tr class="separator:a40230a0a2ea73d576449377519dba3b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa4b7b3e944d83ff5d4a583d676edc99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa4b7b3e944d83ff5d4a583d676edc99"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>apSendHeartbeat</b> ()</td></tr>
<tr class="separator:aaa4b7b3e944d83ff5d4a583d676edc99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e826754dbfe681f155b4ace271c33a1"><td class="memItemLeft" align="right" valign="top">int32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a6e826754dbfe681f155b4ace271c33a1">ArdupilotTableValidationFunc</a> (void *TblPtr)</td></tr>
<tr class="separator:a6e826754dbfe681f155b4ace271c33a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe191ba551056629817421f19927e08e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe191ba551056629817421f19927e08e"></a>
uint16_t&#160;</td><td class="memItemRight" valign="bottom"><b>ConvertPlanToMissionItems</b> (<a class="el" href="structflightplan__t.html">flightplan_t</a> *fp)</td></tr>
<tr class="separator:abe191ba551056629817421f19927e08e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c4ec36e8acadeb7424765429df807c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c4ec36e8acadeb7424765429df807c3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>ConvertMissionItemsToPlan</b> (uint16_t size, mavlink_mission_item_t items[], <a class="el" href="structflightplan__t.html">flightplan_t</a> *fp)</td></tr>
<tr class="separator:a7c4ec36e8acadeb7424765429df807c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a180f4e45c08aa72b4f4aadbad2d0a3e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a180f4e45c08aa72b4f4aadbad2d0a3e2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>IntfServiceHandler</b> (mavlink_message_t *message)</td></tr>
<tr class="separator:a180f4e45c08aa72b4f4aadbad2d0a3e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a9a518bea551679e20e268267d1576422"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a518bea551679e20e268267d1576422"></a>
EXTERN <a class="el" href="structappdataInt__t.html">appdataInt_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a9a518bea551679e20e268267d1576422">appdataInt</a></td></tr>
<tr class="memdesc:a9a518bea551679e20e268267d1576422"><td class="mdescLeft">&#160;</td><td class="mdescRight">global variable containing app state <br /></td></tr>
<tr class="separator:a9a518bea551679e20e268267d1576422"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21f737488b4924a267edc0a2fa97fff6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21f737488b4924a267edc0a2fa97fff6"></a>
EXTERN <a class="el" href="structflightplan__t.html">flightplan_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a21f737488b4924a267edc0a2fa97fff6">fpdata</a></td></tr>
<tr class="memdesc:a21f737488b4924a267edc0a2fa97fff6"><td class="mdescLeft">&#160;</td><td class="mdescRight">waypoint message <br /></td></tr>
<tr class="separator:a21f737488b4924a267edc0a2fa97fff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbfc4fce6a74a1110667bee17869ec31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbfc4fce6a74a1110667bee17869ec31"></a>
EXTERN <a class="el" href="structmissionItemReached__t.html">missionItemReached_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#acbfc4fce6a74a1110667bee17869ec31">wpreached</a></td></tr>
<tr class="memdesc:acbfc4fce6a74a1110667bee17869ec31"><td class="mdescLeft">&#160;</td><td class="mdescRight">mission item reached <br /></td></tr>
<tr class="separator:acbfc4fce6a74a1110667bee17869ec31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaccd061993dfdeef88a2dbce71c6f68e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaccd061993dfdeef88a2dbce71c6f68e"></a>
EXTERN <a class="el" href="structgeofence__t.html">geofence_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#aaccd061993dfdeef88a2dbce71c6f68e">gfdata</a></td></tr>
<tr class="memdesc:aaccd061993dfdeef88a2dbce71c6f68e"><td class="mdescLeft">&#160;</td><td class="mdescRight">geofence data <br /></td></tr>
<tr class="separator:aaccd061993dfdeef88a2dbce71c6f68e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fff3567b90515dc216dd41ee385266d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3fff3567b90515dc216dd41ee385266d"></a>
EXTERN <a class="el" href="structargsCmd__t.html">argsCmd_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a3fff3567b90515dc216dd41ee385266d">startMission</a></td></tr>
<tr class="memdesc:a3fff3567b90515dc216dd41ee385266d"><td class="mdescLeft">&#160;</td><td class="mdescRight">start mission command <br /></td></tr>
<tr class="separator:a3fff3567b90515dc216dd41ee385266d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7be49f01a35ee0616919e72e71942cb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af7be49f01a35ee0616919e72e71942cb"></a>
EXTERN <a class="el" href="structnoArgsCmd__t.html">noArgsCmd_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#af7be49f01a35ee0616919e72e71942cb">resetIcarous</a></td></tr>
<tr class="memdesc:af7be49f01a35ee0616919e72e71942cb"><td class="mdescLeft">&#160;</td><td class="mdescRight">reset icarous command <br /></td></tr>
<tr class="separator:af7be49f01a35ee0616919e72e71942cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af658750d9926b54e48a492c3cf3f446b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af658750d9926b54e48a492c3cf3f446b"></a>
EXTERN <a class="el" href="structobject__t.html">object_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#af658750d9926b54e48a492c3cf3f446b">traffic</a></td></tr>
<tr class="memdesc:af658750d9926b54e48a492c3cf3f446b"><td class="mdescLeft">&#160;</td><td class="mdescRight">traffic message <br /></td></tr>
<tr class="separator:af658750d9926b54e48a492c3cf3f446b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97f6f07d9b99c3e3d789183a9064a7da"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97f6f07d9b99c3e3d789183a9064a7da"></a>
EXTERN <a class="el" href="structposition__t.html">position_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a97f6f07d9b99c3e3d789183a9064a7da">position</a></td></tr>
<tr class="memdesc:a97f6f07d9b99c3e3d789183a9064a7da"><td class="mdescLeft">&#160;</td><td class="mdescRight">position message <br /></td></tr>
<tr class="separator:a97f6f07d9b99c3e3d789183a9064a7da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa1b88357ed34d226cf21356516d8e99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa1b88357ed34d226cf21356516d8e99"></a>
EXTERN <a class="el" href="structattitude__t.html">attitude_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#aaa1b88357ed34d226cf21356516d8e99">attitude</a></td></tr>
<tr class="memdesc:aaa1b88357ed34d226cf21356516d8e99"><td class="mdescLeft">&#160;</td><td class="mdescRight">attitude message <br /></td></tr>
<tr class="separator:aaa1b88357ed34d226cf21356516d8e99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0db5fe4b83e9c1224ff1e1b356d33bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0db5fe4b83e9c1224ff1e1b356d33bf"></a>
EXTERN <a class="el" href="structbattery__status__t.html">battery_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#ac0db5fe4b83e9c1224ff1e1b356d33bf">battery_status</a></td></tr>
<tr class="memdesc:ac0db5fe4b83e9c1224ff1e1b356d33bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">battery status message <br /></td></tr>
<tr class="separator:ac0db5fe4b83e9c1224ff1e1b356d33bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a55ca571edd787c2e969fb5bd28ddb078"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55ca571edd787c2e969fb5bd28ddb078"></a>
EXTERN <a class="el" href="structcmdAck__t.html">cmdAck_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a55ca571edd787c2e969fb5bd28ddb078">ack</a></td></tr>
<tr class="memdesc:a55ca571edd787c2e969fb5bd28ddb078"><td class="mdescLeft">&#160;</td><td class="mdescRight">command acknowledge message <br /></td></tr>
<tr class="separator:a55ca571edd787c2e969fb5bd28ddb078"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78c5f559492e1e13434fe9765a18ee04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78c5f559492e1e13434fe9765a18ee04"></a>
EXTERN <a class="el" href="structvfrhud__t.html">vfrhud_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="ardupilot_8h.html#a78c5f559492e1e13434fe9765a18ee04">vfrhud</a></td></tr>
<tr class="memdesc:a78c5f559492e1e13434fe9765a18ee04"><td class="mdescLeft">&#160;</td><td class="mdescRight">vfr hud data <br /></td></tr>
<tr class="separator:a78c5f559492e1e13434fe9765a18ee04"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>function declarations, definitions of macros, datastructures and global variables for the arudpilot application </p>
</div><h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="ardupilot_8h.html#a7e009e7dbc0dd7be939d03455c972549">controlMode_e</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>enumeration for Ardupilot control modes </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a1aa061c741237642fc9720e78bcc0ce9"></a>STABILIZE&#160;</td><td class="fielddoc">
<p>manual airframe angle with manual throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549ae0a0490702d97acb639917fd526e2333"></a>ACRO&#160;</td><td class="fielddoc">
<p>manual body-frame angular rate with manual throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a3f19d04c83af54e96713b4ab14c7a7ef"></a>ALT_HOLD&#160;</td><td class="fielddoc">
<p>manual airframe angle with automatic throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549aeef9468d1b98bca652a04bf5063fd9d6"></a>AUTO&#160;</td><td class="fielddoc">
<p>fully automatic waypoint control using mission commands </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a2781c142ec876dad824cf164eb9c8c23"></a>GUIDED&#160;</td><td class="fielddoc">
<p>fully automatic fly to coordinate or fly at velocity/direction using GCS immediate commands </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a27c8a6252930823f9ed57d36593e9bb1"></a>LOITER&#160;</td><td class="fielddoc">
<p>automatic horizontal acceleration with automatic throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a19cd99444b6f1588876b490ab1198d73"></a>RTL&#160;</td><td class="fielddoc">
<p>automatic return to launching point </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549aa79c827759ea48f0735386c4b1188911"></a>CIRCLE&#160;</td><td class="fielddoc">
<p>automatic circular flight with automatic throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a946256f1d654ac45417961704ea2323d"></a>DRIFT&#160;</td><td class="fielddoc">
<p>semi-automous position, yaw and throttle control </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a956b9eef94661d496f43e5e155353408"></a>SPORT&#160;</td><td class="fielddoc">
<p>manual earth-frame angular rate control with manual throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a97744c5570e743b377f5fb63b9aa3587"></a>FLIP&#160;</td><td class="fielddoc">
<p>automatically flip the vehicle on the roll axis </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a8345a967452584c722cca8ee80d5c4a5"></a>AUTOTUNE&#160;</td><td class="fielddoc">
<p>automatically tune the vehicle's roll and pitch gains </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a811e9291d1a8da7dc288f079f836eda9"></a>POSHOLD&#160;</td><td class="fielddoc">
<p>automatic position hold with manual override, with automatic throttle </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a8b23c50cc938e0b366df8d8eeeb1bf9f"></a>BRAKE&#160;</td><td class="fielddoc">
<p>full-brake using inertial/GPS system, no pilot input </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549abc5a79c786d2b239440dd3b92c402ef4"></a>THROW&#160;</td><td class="fielddoc">
<p>throw to launch mode using inertial/GPS system, no pilot input </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a2f6891f13a38daa173fe0dc2d66aa561"></a>AVOID_ADSB&#160;</td><td class="fielddoc">
<p>automatic avoidance of obstacles in the macro scale - e.g. full-sized aircraft </p>
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="a7e009e7dbc0dd7be939d03455c972549a4957a999adfbd682a93d13bf054c4ee3"></a>GUIDED_NOGPS&#160;</td><td class="fielddoc">
<p>guided mode but only accepts attitude and altitude </p>
</td></tr>
</table>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="aa5a2a42dcdd4c7122f4347b51c199929"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ARDUPILOT_AppCleanUp </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Clean up variables </p>

</div>
</div>
<a class="anchor" id="abfd19915da5bc293baee951216bc0907"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ARDUPILOT_AppInit </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Initialize app properties </p>

</div>
</div>
<a class="anchor" id="af4f9c53f530257299da5e69efd78a5c8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ARDUPILOT_AppMain </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Entry point for app </p>

</div>
</div>
<a class="anchor" id="a40230a0a2ea73d576449377519dba3b6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ARDUPILOT_ProcessPacket </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Process SB messages from pipes and take action </p>

</div>
</div>
<a class="anchor" id="a6e826754dbfe681f155b4ace271c33a1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int32_t ArdupilotTableValidationFunc </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname"><em>TblPtr</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Validate table data </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">*TblPtr</td><td>pointer to table </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ab1c228faf9d583ac61284a7b20d3b058"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int GetMAVLinkMsgFromAP </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Get mavlink message from Ardupilot </p>

</div>
</div>
<a class="anchor" id="a8b56d89d18a7b18c8cbeaf32feea0f18"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ProcessAPMessage </td>
          <td>(</td>
          <td class="paramtype">mavlink_message_t&#160;</td>
          <td class="paramname"><em>message</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Process mavlink message from ardupilot and take action </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">message</td><td>mavlink message </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a19f1aafabbad250c13d64ea4e563e683"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Task1 </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Read from Ardupilot data stream and pass data to groundstation and ICAROUS app </p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>
